home *** CD-ROM | disk | FTP | other *** search
- /*********************************************************************
-
- mini.file.c
-
- file functions for Miniedit
-
- *********************************************************************/
-
- /*
- #include <MacTypes.h>
- #include <FileMgr.h>
- #include <TextEdit.h>
- #include <WindowMgr.h>
- */
- #include "MiniEdit.h"
-
- int vRef;
-
- extern TEHandle TEH;
- extern WindowPtr myWindow;
-
- SetUpFile()
- {
- Str255 name;
- int refNum;
-
- GetVol(name, &vRef);
- if (FSOpen("\ptemp.txt", vRef, &refNum)==noErr) {
- ReadFile( refNum, TEH );
- FSClose(refNum);
- ShowWindow( myWindow );
- SelectWindow( myWindow );
- TESetSelect(0, 0, TEH);
- ShowSelect();
- }
- else SysBeep(100);
- }
-
- int DoFile(item)
- int item;
- {
- if (item == fmQuit) ExitToShell();
- return(1);
- }
-
- SaveFile()
- {
- int refNum;
-
- if (FSOpen("\ptemp.txt", vRef, &refNum )==noErr) {
- WriteFile(refNum, (*(**TEH).hText), (long)(**TEH).teLength);
- FSClose( refNum );
- return(1);
- }
- else SysBeep(100);
- }
-
- WriteFile( refNum, p, num )
- int refNum;
- char *p;
- long num;
- {
- long filePos;
- int io; /* a real application would want to check
- this return code for failures */
- io=FSWrite( refNum, &num, p );
- if (io != noErr) SysBeep(100);
- io = GetFPos( refNum, &filePos );
- if (io != noErr) SysBeep(100);
- io = SetEOF( refNum, filePos );
- if (io != noErr) SysBeep(100);
- }
-
- ReadFile( refNum, textH )
- int refNum;
- TEHandle textH;
- {
- char buffer[256];
- long count;
- int io;
-
- TESetSelect(0, (**textH).teLength, textH);
- TEDelete( textH );
- do {
- count = 256;
- io = FSRead( refNum, &count, &buffer );
- TEInsert( &buffer, count, textH );
- } while (io==noErr);
-
- return( io==eofErr );
- }